package com.baigu.product.dao.model;

import java.io.Serializable;
import java.util.Date;

public class BgProductSku implements Serializable {
    /**
     * 产品库存ID
     *
     * @mbg.generated
     */
    private String id;

    /**
     * 产品ID
     *
     * @mbg.generated
     */
    private String productId;

    /**
     * 产品扩展名（支持二次扩展产品名称）
     *
     * @mbg.generated
     */
    private String productExtendName;

    /**
     * 产品sku属性
     *
     * @mbg.generated
     */
    private String skuAttr;

    /**
     * 成本价（单位：分）
     *
     * @mbg.generated
     */
    private Integer costPrice;

    /**
     * 批发价（单位：分）
     *
     * @mbg.generated
     */
    private Integer tradePrice;

    /**
     * 市场价（单位：分）
     *
     * @mbg.generated
     */
    private Integer marketPrice;

    /**
     * 重量（单位：克）
     *
     * @mbg.generated
     */
    private Integer weight;

    /**
     * 产品库存
     *
     * @mbg.generated
     */
    private Integer stock;

    /**
     * sku销量
     *
     * @mbg.generated
     */
    private Integer skuSales;

    /**
     * 删除标记（0:未删除，1:已删除）
     *
     * @mbg.generated
     */
    private Integer delFlag;

    /**
     * 创建人(默认系统创建:system)
     *
     * @mbg.generated
     */
    private String createBy;

    /**
     * 创建日期
     *
     * @mbg.generated
     */
    private Date createDate;

    /**
     * 最后修改人(默认系统创建:system)
     *
     * @mbg.generated
     */
    private String updateBy;

    /**
     * 最后修改日期
     *
     * @mbg.generated
     */
    private Date updateDate;

    private static final long serialVersionUID = 1L;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getProductExtendName() {
        return productExtendName;
    }

    public void setProductExtendName(String productExtendName) {
        this.productExtendName = productExtendName;
    }

    public String getSkuAttr() {
        return skuAttr;
    }

    public void setSkuAttr(String skuAttr) {
        this.skuAttr = skuAttr;
    }

    public Integer getCostPrice() {
        return costPrice;
    }

    public void setCostPrice(Integer costPrice) {
        this.costPrice = costPrice;
    }

    public Integer getTradePrice() {
        return tradePrice;
    }

    public void setTradePrice(Integer tradePrice) {
        this.tradePrice = tradePrice;
    }

    public Integer getMarketPrice() {
        return marketPrice;
    }

    public void setMarketPrice(Integer marketPrice) {
        this.marketPrice = marketPrice;
    }

    public Integer getWeight() {
        return weight;
    }

    public void setWeight(Integer weight) {
        this.weight = weight;
    }

    public Integer getStock() {
        return stock;
    }

    public void setStock(Integer stock) {
        this.stock = stock;
    }

    public Integer getSkuSales() {
        return skuSales;
    }

    public void setSkuSales(Integer skuSales) {
        this.skuSales = skuSales;
    }

    public Integer getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", productId=").append(productId);
        sb.append(", productExtendName=").append(productExtendName);
        sb.append(", skuAttr=").append(skuAttr);
        sb.append(", costPrice=").append(costPrice);
        sb.append(", tradePrice=").append(tradePrice);
        sb.append(", marketPrice=").append(marketPrice);
        sb.append(", weight=").append(weight);
        sb.append(", stock=").append(stock);
        sb.append(", skuSales=").append(skuSales);
        sb.append(", delFlag=").append(delFlag);
        sb.append(", createBy=").append(createBy);
        sb.append(", createDate=").append(createDate);
        sb.append(", updateBy=").append(updateBy);
        sb.append(", updateDate=").append(updateDate);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        BgProductSku other = (BgProductSku) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getProductId() == null ? other.getProductId() == null : this.getProductId().equals(other.getProductId()))
            && (this.getProductExtendName() == null ? other.getProductExtendName() == null : this.getProductExtendName().equals(other.getProductExtendName()))
            && (this.getSkuAttr() == null ? other.getSkuAttr() == null : this.getSkuAttr().equals(other.getSkuAttr()))
            && (this.getCostPrice() == null ? other.getCostPrice() == null : this.getCostPrice().equals(other.getCostPrice()))
            && (this.getTradePrice() == null ? other.getTradePrice() == null : this.getTradePrice().equals(other.getTradePrice()))
            && (this.getMarketPrice() == null ? other.getMarketPrice() == null : this.getMarketPrice().equals(other.getMarketPrice()))
            && (this.getWeight() == null ? other.getWeight() == null : this.getWeight().equals(other.getWeight()))
            && (this.getStock() == null ? other.getStock() == null : this.getStock().equals(other.getStock()))
            && (this.getSkuSales() == null ? other.getSkuSales() == null : this.getSkuSales().equals(other.getSkuSales()))
            && (this.getDelFlag() == null ? other.getDelFlag() == null : this.getDelFlag().equals(other.getDelFlag()))
            && (this.getCreateBy() == null ? other.getCreateBy() == null : this.getCreateBy().equals(other.getCreateBy()))
            && (this.getCreateDate() == null ? other.getCreateDate() == null : this.getCreateDate().equals(other.getCreateDate()))
            && (this.getUpdateBy() == null ? other.getUpdateBy() == null : this.getUpdateBy().equals(other.getUpdateBy()))
            && (this.getUpdateDate() == null ? other.getUpdateDate() == null : this.getUpdateDate().equals(other.getUpdateDate()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getProductId() == null) ? 0 : getProductId().hashCode());
        result = prime * result + ((getProductExtendName() == null) ? 0 : getProductExtendName().hashCode());
        result = prime * result + ((getSkuAttr() == null) ? 0 : getSkuAttr().hashCode());
        result = prime * result + ((getCostPrice() == null) ? 0 : getCostPrice().hashCode());
        result = prime * result + ((getTradePrice() == null) ? 0 : getTradePrice().hashCode());
        result = prime * result + ((getMarketPrice() == null) ? 0 : getMarketPrice().hashCode());
        result = prime * result + ((getWeight() == null) ? 0 : getWeight().hashCode());
        result = prime * result + ((getStock() == null) ? 0 : getStock().hashCode());
        result = prime * result + ((getSkuSales() == null) ? 0 : getSkuSales().hashCode());
        result = prime * result + ((getDelFlag() == null) ? 0 : getDelFlag().hashCode());
        result = prime * result + ((getCreateBy() == null) ? 0 : getCreateBy().hashCode());
        result = prime * result + ((getCreateDate() == null) ? 0 : getCreateDate().hashCode());
        result = prime * result + ((getUpdateBy() == null) ? 0 : getUpdateBy().hashCode());
        result = prime * result + ((getUpdateDate() == null) ? 0 : getUpdateDate().hashCode());
        return result;
    }
}